package com.ccys.db.entity;

import com.ccys.db.rely.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import java.math.BigDecimal;
import javax.persistence.*;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
* Created by Mybatis Generator on 2023/12/08
*/
@Data
@Table(name = "tbl_product")
@NoArgsConstructor
@AllArgsConstructor
public class TblProduct extends BaseEntity {
    /**
     * 0 平台类型,1 三方药房
     */
    @ApiModelProperty("0 平台类型,1 三方药房")
    private Integer partner;

    @Column(name = "group_id")
    private String groupId;

    @Column(name = "country_id")
    private String countryId;

    @Column(name = "clinic_id")
    private String clinicId;

    @Column(name = "pharmacy_group_id")
    private String pharmacyGroupId;

    private String code;

    @Column(name = "type_id")
    private String typeId;

    private String name;

    @Column(name = "drug_class_id")
    private String drugClassId;

    private Integer status;

    /**
     * 诊所添加需要审核，0 待审核，1 审核成功
     */
    @Column(name = "approve_status")
    @ApiModelProperty("诊所添加需要审核，0 待审核，1 审核成功")
    private Integer approveStatus;

    @Column(name = "disp_order")
    private Integer dispOrder;

    @Column(name = "recommended_dosage")
    private String recommendedDosage;

    @Column(name = "recommended_frequency")
    private String recommendedFrequency;

    @Column(name = "recommended_duration")
    private String recommendedDuration;

    private String description;

    private String remarks;

    @Column(name = "generic_name")
    private String genericName;

    private String manufacturer;

    /**
     * 1:general medication;2:Antibiotics;3:Controlled;4:Supplies/Others
     */
    @Column(name = "drug_code")
    @ApiModelProperty("1:general medication;2:Antibiotics;3:Controlled;4:Supplies/Others")
    private Integer drugCode;

    @Column(name = "markup_code")
    private String markupCode;




    @ApiModelProperty("病人购买单价")
    @Column(name = "selling_price_per_unit")
    private BigDecimal sellingPricePerUnit;


    @Column(name = "monitor_stock")
    private Integer monitorStock;

    @Column(name = "low_stock_threshold")
    private Integer lowStockThreshold;

    /**
     * name(for medication label)
     */
    @Column(name = "name_label")
    @ApiModelProperty("name(for medication label)")
    private String nameLabel;

    @Column(name = "what_is_for")
    private String whatIsFor;

    @Column(name = "take_complete_course")
    private Integer takeCompleteCourse;

    private Integer prn;

    @Column(name = "may_cause_drowsiness")
    private Integer mayCauseDrowsiness;

    /**
     * Chronic medication,用在 CDMP 中
     */
    @ApiModelProperty("Chronic medication,用在 CDMP 中")
    private Integer cdmp;

    @Column(name = "any_other_precautions")
    private String anyOtherPrecautions;

    /**
     * 实际可用库存
     */
    @Column(name = "qty_remain_in_stock")
    @ApiModelProperty("实际可用库存")
    private Integer qtyRemainInStock;

    /**
     * 总库存
     */
    @Column(name = "qty_import_in_stock")
    @ApiModelProperty("总库存")
    private Integer qtyImportInStock;

    /**
     * 名称首字母
     */
    @Column(name = "alpha_order")
    @ApiModelProperty("名称首字母")
    private String alphaOrder;

    /**
     * formulationId
     */
    @Column(name = "fl_id")
    @ApiModelProperty("formulationId")
    private String flId;

    /**
     * routeDoctorId
     */
    @Column(name = "rd_id")
    @ApiModelProperty("routeDoctorId")
    private String rdId;

    /**
     * routePatientId
     */
    @Column(name = "rp_id")
    @ApiModelProperty("routePatientId")
    private String rpId;

    /**
     * 产品最小用量单位的unitOfMeasurementId
     */
    @Column(name = "uom_id")
    @ApiModelProperty("产品最小用量单位的unitOfMeasurementId")
    private String uomId;

    /**
     * 产品包装单位的unitOfMeasurementId
     */
    @Column(name = "pack_uom_id")
    @ApiModelProperty("产品包装单位的unitOfMeasurementId")
    private String packUomId;

    /**
     * 产品包装数量，产品最小用量单位与包装单位的比例
     */
    @Column(name = "pack_num")
    @ApiModelProperty("产品包装数量")
    private Integer packNum;

    /**
     * 暂时没用
     */
    @Column(name = "send_mail")
    @ApiModelProperty("暂时没用")
    private Integer sendMail;

    /**
     * 保留，也许用在屈臣氏的药品上
     */
    @ApiModelProperty("保留，也许用在屈臣氏的药品上")
    private Integer plu;

    /**
     * 保留，也许用在屈臣氏的药品上
     */
    @ApiModelProperty("保留，也许用在屈臣氏的药品上")
    private Integer dept;

    /**
     * 保留，也许用在屈臣氏的药品上
     */
    @Column(name = "dept_name")
    @ApiModelProperty("保留，也许用在屈臣氏的药品上")
    private String deptName;

    /**
     * 0 展示在医生端 1 不展示在医生端
     */
    @ApiModelProperty("0 展示在医生端 1 不展示在医生端")
    private Integer discontinued;

    /**
     * 保留，也许用在三方药房
     */
    @Column(name = "partner_code")
    @ApiModelProperty("保留，也许用在三方药房")
    private String partnerCode;

    /**
     * 是否sp专用药，保留，暂时用不上
     */
    @Column(name = "sp_medication")
    @ApiModelProperty("是否sp专用药，保留，暂时用不上")
    private Integer spMedication;


    @Column(name = "quantity_id")
    private String quantityId;
}